//
//  FFATPadStackViewController.h
//  FFSurveillance
//
//  Created by roro_latrobe on 16/10/28.
//  Copyright © 2016年 cn.wanda. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "FFATPluginsViewController.h"

NS_ASSUME_NONNULL_BEGIN

@class FFATPadStackViewController;

@protocol FFATPadStackDelegate <NSObject>

- (void)stack:(FFATPadStackViewController *)stack actionBeginAtPoint:(CGPoint)point;
- (void)stack:(FFATPadStackViewController *)stack actionEndAtPoint:(CGPoint)point;

@end

@interface FFATPadStackViewController : UIViewController

- (instancetype)initWithRootViewController:(nullable FFATPluginsViewController *)viewController NS_DESIGNATED_INITIALIZER;

- (void)spread;
- (void)shrink;
- (void)pushViewController:(FFATPluginsViewController *)viewController atPisition:(FFATPosition *)position;
- (void)popViewController;

- (void)moveContentViewToPoint:(CGPoint)point;

@property (nonatomic, strong, readonly) NSMutableArray<FFATPluginsViewController *> *viewControllers;
@property (nonatomic, assign, readonly, getter=isShow) BOOL show;
@property (nonatomic, weak) id<FFATPadStackDelegate> delegate;

@end

@interface FFATPluginsViewController (AttachNavigator)

@property (nonatomic, weak) FFATPadStackViewController *navigationController;

@end

NS_ASSUME_NONNULL_END
